/*
 *  填空题，直线
 * */

#include <iostream>
#include <set>
using namespace std;

int M = 20, N = 21;

set<pair<double, double>> s;

void check(int x1, int y1, int x2, int y2) {
    if (x1 == x2 || y1 == y2) {
        return;
    }

    double k = (y2 - y1) * 1.0 / (x2 - x1);
    double b = (y1 * x2 - x1 * y2) * 1.0 / (x2 - x1);
    s.insert({k, b});
}

int main() {

    for (int i = 0; i < M; ++i) {
        for (int j = 0; j < N; ++j) {
            for (int k = 0; k < M; ++k) {
                for (int g = 0; g < N; ++g) {
                    check(i, j, k, g);
                }
            }
        }
    }

    cout << s.size() + M + N << endl;

    return 0;
}